package com.air.service;

import com.air.dto.FlightDTO;
import com.air.dto.FlightPageQueryDTO;
import com.air.entity.Flight;
import com.air.result.PageResult;
import com.air.vo.FlightVO;

import java.util.List;

public interface FlightService {
    /**
     * 新增航班
     * @param flightDTO
     */
    void save(FlightDTO flightDTO);

    /**
     * 分页查询航班
     * @param flightPageQueryDTO
     * @return
     */
    PageResult pageQuery(FlightPageQueryDTO flightPageQueryDTO);

    /**
     * 批量删除航班
     * @param ids
     */
    void deleteBatch(List<Long> ids);

    /**
     * 根据id查询航班
     * @param id
     * @return
     */
    FlightVO getById(Long id);

    /**
     * 修改航班
     * @param flightDTO
     */
    void update(FlightDTO flightDTO);

    /**
     * 修改航班状态
     * @param status
     * @param id
     */
    void startOrStop(Integer status, Long id);

    /**
     * 根据航空公司id查询航班
     * @param airlineId
     * @return
     */
    List<Flight> list(Long airlineId);
}
